In a conventional wireless CDMA (code division multiple access) system, data to be transmitted is encoded to add redundant information using a channel code, such as one of the types commonly referred to as convolutional code or turbo code. Subsequently, an interleaver is used to pseudo-randomly interleave the data sequence to combat the known problem of channel fading to the down link channel. A section of the data which is interleaved in this way is called a “frame”. Subsequently the data is subject to a known spread spectrum process. Finally the data is modulated and transmitted. This process is shown as FIG. 1.
A known receiver for the CDMA signal is shown in FIG. 2. The received data is quantized by an AND converter, de-spread with local pseudo-noise (“PN”) code in a RAKE receiver (that is to say a known unit which permits a given receiver to distinguish signals intended for it from signals intended for other receivers; typically, a RAKE receiver includes multiple “fingers, and the RAKE receiver is capable of receiving multiple signal sources and adding them together using respective fingers). The RAKE output data for the whole of a frame to be de-interleaved is stored in memory, and then processed to de-interleave it. The de-interleaved data is then used by a Viterbi or turbo decoder to retrieve the transmitted data.
The range of a RAKE output depends on the transmitted signal power strength, the path loss, the fading environment, the spreading gain, the AGC (automatic gain control) and the power control (if any). Therefore, the RAKE receiver will have many bits of output and the valid signal range will vary. However, it is at least highly inconvenient for the ASIC (application specific integrated circuit) to store all the bits of the RAKE output. For this reason, a normaliser is provided for “normalising” the output of the RAKE receiver, by which is meant automatically selecting from the multi-bit output fewer bits which actually contain the desired data. That is, the normaliser aims to reduce the bit width without degrading the performance of the Turbo decoder.